
		MICROWAVE FIRMWARE VERSION 1.25

		    REALTIME SYS-EX PROTOCOL

    	   ADDENDUM TO THE MICROWAVE SYS-EX PROTOCOL

		      November 30th, 1993


ATTENTION: Please understand that this REALTIME SYS-EX Protocol
is only an addendum to the MICROWAVE SYS-EX PROTOCOL. Before
starting to implement realtime Sys-EX parameters, read the
entire introduction of the MICROWAVE SYS-EX PROTOCOL first.
It is essential that you understand the general outlay and
protocol of the MicroWave Sys-Ex parameters, which is not
completely described here.

----------------------------------------------------------------

		A. General

Sys-Ex dumps and requests will always be in the following form:

F0h IDW DEV IDM --------data--------- CHKSUM F7h

where

h         : Hex
IDW       : Waldorf MIDI ID = 3Eh
IDE       : Equipment ID = 00h for MicroWave
DEV       : Device number, 00h to 7Eh, 7Fh = global
IDM       : Message ID
Data      : whatever data bytes, 00h to 7Fh
CHKSUM    : Sum of all databytes truncated to 7 bits.
            The addition is done in 8 bit format, the result is    
            masked to 7 bits (00h to 7Fh).
            IMPORTANT: the MIDI status-bytes as well as the 
            ID's are not used for computing the checksum.
            If there are no data-bytes in the message (simple      
            request), the checksum will always be 00h.

To verify a message, all ID's, the checksum, the EOX-status and 
the total lenght of the message are used.

An unknown message will lead to no reaction; it will be ignored 
completely.


		B. Data Formats

If not indicated differently, a databyte consists of a regular 
MIDI-databyte. (00h..7Fh).

Otherwise:

ASCII: A MIDI databyte in the range of 20h..7Fh.
BYTE : Two consecutive nibbles form an 8-bit byte.
       The MS nibble is sent first.
WORD : Four consecutive nibbles form a 16-bit word.
       The MS nibble is sent first.

No other data formats will be provided.
Within a single message data formats may be mixed.



		C. New IDM's


	0A  GLBR  Global Parameter Request
	4A  GLBD  Global Parameter Dump
	0B  ABPR  Arr. Bank Program Request
	4B  ABPD  Arr. Bank Program Dump
	60  RTBP  Real Time BPR Edit
	61  RTAR  Real Time ARR Edit
	62  RTGL  Real Time Global Parameter Edit



		D. New Functions


Addionally to the specifications of BPRD, ARPD and ARRD, these
dumps have new functions:

BPRD switches the MicroWave to Poly Mode.
ARPD and ARRD switches the MicroWave to Multi Mode.

If automatic switching from Multi to Poly Mode or
is not desired, BPRD can be replaced by ABPD, which
works also in Poly Mode.



		E. Detailed Information


GLBR
--------------------------------------------------
IDM: 0Ah (Global Parameter Request)

Requests the MicroWave to send a Global Parameter Dump (GLBD).

Byte  	#	Value

	0	F0h 	(EXC)
	1	IDW
	2	IDE
	3	DEV
	4	IDM
	5	CHKSUM (= 0)
	6	F7h	(EOX)


GLBD
--------------------------------------------------
IDM: 4Ah (Global Parameter Dump)

Will be issued if a Global Parameter Request (GLBR)
is sent to the MicroWave.

When receiving a GLBD dump all Global Parameters will
be replaced by the contents of the GLBD dump.

Byte	#	Value

	0	F0h	(EXC)
	1	IDW
	2	IDE
	3	DEV
	4	IDM

		Global Parameters

	5	Mastervolume (0...127)
	6	Stereo width (0...127, 0=mono, 127=full)
	7	Mastertune (0...127, equals -64...+63, 0=440 Hz)

		Midi Parameters

	8	Midi Channel (0...16, 0=omni, 1...16 = channels 1...16)
	9	Controller W (0...120)
       10	Controller X (0...120)
       11	Controller Y (0...120)
       12	Controller Z (0...120)
       13	Program Change Enable (0=off, 1=on)
       14	Pitch Wheel Enable (0=off, 1=on)
       15	Modulation Wheel Enable (0=off, 1=on)
       16	Aftertouch Enable (0=off, 1=on)
       17	Polyphonic Key Pressure Enable (0=off, 1=on)
       18	Volume Controller Enable (0=off, 1=on)
       19	Panning Controller Enable (0=off, 1=on)
       20	Sustain Pedal Enable (0=off, 1=on)
       21	Program Change Maps Enable (0=off, 1=on)
       22	Program Change Voice Shutdown (0=off, 1=on)

       23	CHKSUM over Databytes 5...22
       24	F7h	(EOX)



ABPR
--------------------------------------------------
IDM: 0Bh (Arrangement Sound Program Request)

Requests the MicroWave to send the ABPD dump of
the specified instrument of the currently selected
Multi program.

Byte	#	Value

	0	F0h	(EXC)
	1	IDW
	2	IDE
	3	DEV
	4	IDM

	5	Instrument #  (0...7)

	6	CHKSUM (= Instrument No.)
	7	F7h 	(EOX)



ABPD
--------------------------------------------------
IDM: 4Bh (Arrangement Sound Program Dump)

Will be issued by the MicroWave after receiving an
ABPR request. Also sent if the MicroWave is set to
Overflow-Link Mode and the sound number of an instrument
has been changed.

If received, the sound program contained by the dump
is copied to an edit buffer and then used for the
specified instrument of the currently selected
Multi program.
If the MicroWave is in Poly mode, the instrument
number will be ignored.

Byte	#	Value

	0	F0h	(EXC)
	1	IDW
	2	IDE
	3	DEV
	4	IDM

		Data:
	5	Instrument No. (0...7)
    6...185	see BPRD description

      186	CHKSUM over bytes 6...185
      187	F7h 	(EOX)



RTBP
--------------------------------------------------
IDM: 60h (Real Time BPR Edit)

Will be issued if the MicroWave is set to Overflow-Link mode
and a BPR parameter has been changed via the MicroWave's
user interface.

When receiving a RTBP dump the sound program (BPR) used
by the specified instrument no. will be loaded into an
edit buffer. If there's no free buffer, a currently
unused one will be overwritten.

Be aware that by identifying each BPR with it's instrument no.
you can edit each and every parameter of every BPR of the
entire Multi program concurrently without loosing any data.

In Poly mode the instrument no. will be ignored.


Byte	#	Value

	0	F0h	(EXC)
	1	IDW
	2	IDE
	3	DEV
	4	IDM

		Data:
	5	Instrument No. (0...7)
       6,7	BPR parameter no. (0...179) in format BYTE
		Unused parameters shouldn't be changed.
		A change of the valid-flag will be ignored.
		See BPRD for reference of parameters to
		parameter numbers.
	8	Parameter value (0...127). See BPRD for reference.

	9	CHKSUM over databytes 5...8
       10	F7h	(EOX)



RTAR
--------------------------------------------------
IDM: 61h (Real Time Arrangement Edit)

Will be issued if the MicroWave is in Overflow-Link mode
and an ARR parameter has been changed via the MicroWave's
user interface.

When receiving a RTAR dump the current Multi program will  
be loaded into an edit buffer. If there is no empty buffer,
a currently unused one will be overwritten.

Byte	#	Value

	0	F0h	(EXC)
	1	IDW
	2	IDE
	3	DEV
	4	IDM

		Data:
       5,6	ARR parameter number (0...255) in format BYTE.
		Unused parameters shouldn't be changed.
		A change of the valid flag will be ignored.
		See ARPD for reference of parameters to
		parameter numbers.
	7	Parameter value (0...127). See ARPD for reference.

	8	CHKSUM over databytes 5...7
	9	F7h	(EOX)



RTGL
--------------------------------------------------
IDM: 62h (Real Time Global Parameter Edit)

Will be issued if the MicroWave is in Overflow-Link mode
and a Global- or Midi parameter has been changed via
the MicroWave's user interface.

If the MicroWave receives a RTGL dump the specified
parameter will be set to it's new value.

Byte	#	Value

	0	F0h	(EXC)
	1	IDW
	2	IDE
	3	DEV
	4	IDM

		Data:
        5	Global or MIDI parameter number (0...17)
		0...2: Global parameters
		3..17: MIDI parameters
		See GLBD for reference of parameters to
		parameter numbers
	6	Parameter value (0...127). See ARPD for reference.

	7	CHKSUM over databytes 5,6
	8	F7h	(EOX)



-----------------------------------------------------
End of Sys-Ex Addendum to the MicroWave Firmware 1.25

